$(function(){
	var ajaxLoader = new Z.AjaxLoader({
		url : Z.url('/backend/user/records'),
		templates : {
			list : $('#list-template'),
			none : $('#none-template').html()
		},
		containers : {
			list : $('table.records tbody'),
			pagination : $('table.records tfoot td')
		},
		after : function(){
			$('table.records tbody tr:odd').addClass('odd');
		}
	}),
	getId = function(a){
		return Z.parseInt($(a).parent().siblings().first().find(':checkbox').val());
	};

	$('a.add').click(function(){
		var data = {
			'action' : 'insert'
		};
		Z.form({
			'title' : '添加帐号',
			'width' : 375,
			'content' : $('#form-template').tmpl(data),
			'success' : function(){
				ajaxLoader.reload();
			},
			'open' : function(){
				$('.form-row:odd').addClass('odd');
			}
		});
		return false;
	});

	$('a.edit').live('click',function(){
		var id = getId($(this));
		Z.ajax({
			url : Z.url('/backend/user/records'),
			data : {'id' : id},
			success : function(data){
				if(data.total == 0){
					Z.alert('错误的ID或该帐号已被删除');
				}

				var formData = data.records[0];
				formData.action = 'update';

				Z.form({
					'title' : '修改帐号',
					'width' : 375,
					'content' : $('#form-template').tmpl(formData),
					'success' : function(){
						ajaxLoader.reload();
					},
					'open' : function(dialog){
						$('.form-row:odd').addClass('odd');
						dialog.find('select[name=permission_group]').val(formData.permission_group);
					}
				});
			}
		});
		return false;
	});

	$('a.freeze').live('click',function(){
		var self = $(this);
		Z.ajax({
			url : Z.url('/backend/user/freeze/'+getId($(this))),
			success : function(){
				self.replaceWith($('<a href="javascript:void(0);" class="unfreeze" title="已冻结，点击激活"><img src="/assets/img/freeze.png" alt="已冻结"/></a>'));
			}
		});
	});

	$('a.unfreeze').live('click',function(){
		var self = $(this);
		Z.ajax({
			url : Z.url('/backend/user/unfreeze/'+getId($(this))),
			success : function(){
				self.replaceWith($('<a href="javascript:void(0);" class="freeze" title="已激活，点击冻结"><img src="/assets/img/unfreeze.png" alt="已激活"/></a>'));
			}
		});
	});

	$('table.records thead  a').each(function(index){
		$(this).click(function(){
			var order_type = -1 * (ajaxLoader.data.order_type || -1);

			$('table.records thead th.asc').removeClass('asc');
			$('table.records thead th.desc').removeClass('desc');
			$(this).parent().addClass(order_type == 1?'asc':'desc');
			ajaxLoader.request({
				'order_field' : index,
				'order_type' : order_type
			});
		});
	});

	$('form.filter').submit(function(){
		ajaxLoader.request({
			'username' : $(this).find('input[name=username]').val(),
			'permission_group' : Z.parseInt($(this).find('select[name=permission_group]').val()),
			'sex' : Z.parseInt($(this).find('select[name=sex]').val()),
			'is_freezed' : Z.parseInt($(this).find('select[name=is_freezed]').val()),
			'start' : $(this).find('input[name=start]').val(),
			'end' : $(this).find('input[name=end]').val()
		});
		return false;
	});

	$('input[name=username],input[name=password],input[name=repeat_password],input[name=email]').live('blur',function(){
		if($(this).val() == ''){
			$(this).addClass('error');
		}
	}).live('focus',function(){
		if($(this).hasClass('error')){
			$(this).removeClass('error')
		}
	});

	$('input[name=email]').live('blur',function(){
		if(!Z.Validation.email($(this).val())){
			$(this).addClass('error');
		}
	});

	ajaxLoader.request();

	$('input.datetime').datepicker({
		'dateFormat' : 'yy-mm-dd',
		'monthNames' : ['一月','二月','三月','四月','五月','六月','七月','八月','九月','十月','十一月','十二月'],
		'dayNames'   : ['周一','周二','周三','周四','周五','周六','周日'],
		'dayNamesMin'   : ['日','一','二','三','四','五','六']
	});
});